Developer --> Technical Publications
PATHHardware Documentation > USB Devices > Mac OS USB DDK API Reference


USB Constants

The constants recognized by the USL are listed in this section.

Parameter Block Constants

    kUSBCurrentPBVersion  = 0x0100   /* version 1.00*/
    kUSBIsocPBVersion     = 0x0109   /* version 1.10*/

Endpoint Type Constants

    kUSBControl   = 0
    kUSBIsoc      = 1
    kUSBBulk      = 2
    kUSBInterrupt = 3
    kUSBAnyType   = 0xff

usbBMRequest Direction Constants

    kUSBOut     = 0
    kUSBIn      = 1
    kUSBNone    = 2
    kUSBAnyDirn = 3

usbBMRequestType Type Constants

    kUSBStandard = 0
    kUSBClass    = 1
    kUSBVendor   = 2

usbBMRequest Recipient Constants

    kUSBDevice    = 0
    kUSBInterface = 1
    kUSBEndpoint  = 2
    kUSBOther     = 3

usbBRequest Constants

    kUSBRqGetStatus     = 0
    kUSBRqClearFeature  = 1
    kUSBRqReserved1     = 2
    kUSBRqSetFeature    = 3
    kUSBRqReserved2     = 4
    kUSBRqSetAddress    = 5
    kUSBRqGetDescriptor = 6
    kUSBRqSetDescriptor = 7
    kUSBRqGetConfig     = 8
    kUSBRqSetConfig     = 9
    kUSBRqGetInterface  = 10
    kUSBRqSetInterface  = 11
    kUSBRqSyncFrame     = 12

Interface Constants

    kUSBHIDInterfaceClass           = 0x03
    kUSBNoInterfaceSubClass         = 0x00
    kUSBBootInterfaceSubClass       = 0x01

Interface Protocol Constants

    kUSBNoInterfaceProtocol         = 0x00
    kUSBKeyboardInterfaceProtocol   = 0x01
    kUSBMouseInterfaceProtocol      = 0x02

Driver Class Constants

    kUSBCompositeClass      = 0,
    kUSBAudioClass          = 1
    kUSBCOMMClass           = 2,
    kUSBHIDClass            = 3,
    kUSBDisplayClass        = 4,
    kUSBPrintingClass       = 7
    kUSBMassStorageClass   = 8
    kUSBHubClass            = 9,
    kUSBDataClass          = 10
    kUSBVenderSpecificClass = 0xFF
};

Descriptor Type Constants

    kUSBDeviceDesc    = 1
    kUSBConfDesc      = 2
    kUSBStringDesc    = 3
    kUSBInterfaceDesc = 4
    kUSBEndpointDesc  = 5
    kUSBHIDDesc       = 0x21
    kUSBReportDesc    = 0x22
    kUSBPhysicalDesc  = 0x23
    kUSBHUBDesc       = 0x29

Pipe State Constants

    kUSBActive    = 0,  /* Pipe can accept new transactions*/
    kUSBIdle      = 1,  /* Pipe cannot accept new transactions*/
    kUSBStalled   = 2   /* An error occured on the pipe*/

USB Power and Bus Attribute Constants

    kUSB100mAAvailable  = 50
    kUSB500mAAvailable  = 250
    kUSB100mA           = 50
    kUSBAtrBusPowered   = 0x80
    kUSBAtrSelfPowered  = 0x40
    kUSBAtrRemoteWakeup = 0x20

Driver File and Resource Types

    kServiceCategoryUSB = FOUR_CHAR_CODE('usb ')
    kUSBTypeIsHub       = FOUR_CHAR_CODE('hubd')
    kUSBTypeIsHID       = FOUR_CHAR_CODE('HIDd')
    kUSBTypeIsDisplay   = FOUR_CHAR_CODE('disp')
    kUSBTypeIsModem     = FOUR_CHAR_CODE('modm')
    kUSBDriverFileType  = FOUR_CHAR_CODE('ndrv')
    kUSBDriverRsrcType  = FOUR_CHAR_CODE('usbd')
    kUSBShimRsrcType    = FOUR_CHAR_CODE('usbs')
    kTheUSBDriverDescriptionSignature = FOUR_CHAR_CODE('usbd')

© 1998 Apple Computer, Inc. – (Last Updated 23 Nov 98)

Previous | Back Up One Level | Next |